알고리즘과 자료구조 기초 - 이진 탐색 트리, Trie, 공간분할트리 이진 탐색 트리 Binary Search Tree 노드의 개수가 최대 2개인 트리 항상 정렬되어 있다 (루트노드를 기준으로 왼쪽노드는 루트노드 보다 작고, 오른쪽노드는 루트노드 보다 크다) 왼쪽 자식 노드 < 부모 노드 < 오른쪽 자식 노드 [Insertion] 시간복잡도: O(h) h는 height로 트리의 높이 9를 넣을 때 루트(7)보다 크다 -> 오른쪽 브랜치로 10보다 작다 -> 왼... 알고리즘과 자료구조알고리즘과 자료구조 정렬 (버블, 선택, 삽입, 퀵, 합병, 힙, 계수) 출처: 하나씩 증가하면서 바로 옆에 있는거랑 비교하는데 회전이 끝날때마다 마지막 숫자는 정렬되어 더 이상 비교할 필요가 없다. Runtime: 버블버블 Average: O(N^2) Worst: O(N^2) Memory: O(1) Comparison과 Generic을 활용해 함수로 만들기 오름차순의 경우 매번 가장 작은 것을 선택한다 O(n^2) 안쪽에서 한바퀴, 바깥에서 한바퀴 삽입정렬보다 ... 알고리즘과 자료구조알고리즘과 자료구조
기초 - 이진 탐색 트리, Trie, 공간분할트리 이진 탐색 트리 Binary Search Tree 노드의 개수가 최대 2개인 트리 항상 정렬되어 있다 (루트노드를 기준으로 왼쪽노드는 루트노드 보다 작고, 오른쪽노드는 루트노드 보다 크다) 왼쪽 자식 노드 < 부모 노드 < 오른쪽 자식 노드 [Insertion] 시간복잡도: O(h) h는 height로 트리의 높이 9를 넣을 때 루트(7)보다 크다 -> 오른쪽 브랜치로 10보다 작다 -> 왼... 알고리즘과 자료구조알고리즘과 자료구조 정렬 (버블, 선택, 삽입, 퀵, 합병, 힙, 계수) 출처: 하나씩 증가하면서 바로 옆에 있는거랑 비교하는데 회전이 끝날때마다 마지막 숫자는 정렬되어 더 이상 비교할 필요가 없다. Runtime: 버블버블 Average: O(N^2) Worst: O(N^2) Memory: O(1) Comparison과 Generic을 활용해 함수로 만들기 오름차순의 경우 매번 가장 작은 것을 선택한다 O(n^2) 안쪽에서 한바퀴, 바깥에서 한바퀴 삽입정렬보다 ... 알고리즘과 자료구조알고리즘과 자료구조